/**
 * AssertUtil.java - 2013-4-17
 *
 * Licensed Property to China UnionPay Co., Ltd.
 * 
 * (C) Copyright of China UnionPay Co., Ltd. 2010
 *     All Rights Reserved.
 *
 * Project Info: China UnionPay Internet Acquiring Project
 * 
 * Modification History:
 * =============================================================================
 *   Author         Date          Description
 *   ------------ ---------- ---------------------------------------------------
 *        
 * =============================================================================
 */
package com.lijin.batchsys.framework.common;



/**
 * Description: 用于对方法参数进行检查的工具类
 *
 * (C) Copyright of China UnionPay Co., Ltd. 2010.
 *
 */
public class AssertUtil {

	/**
	 * 验证方法传入的参数是否为null，如果是则抛非法参数异常，异常信息可以自己指定
	 * @param o
	 * @param msg
	 */
	public static void argIsNull(Object o, String msg) {
		if (o == null) {
			if (StringUtil.isBlank(msg)) {
				msg = "参数为null";
			}
			throw new RuntimeException(msg);
		}
	}
	
	/**
	 * 验证字符串是否为null或空，如果是则抛如果是则抛非法参数异常，异常信息可以自己指定
	 * @param str
	 */
	public static void argIsBlank(String str, String msg) {
		if (StringUtil.isBlank(str)) {
			if (StringUtil.isBlank(msg)) {
				msg = "字符串为空: " + str;
			}
			throw new RuntimeException(msg);
		}
	}
	
	/**
	 * 对象如果是null则抛运行时异常，异常信息可以自己指定
	 * @param o
	 * @param msg
	 */
	public static void objIsNull(Object o, String msg) {
		if (o == null) {
			if (StringUtil.isBlank(msg)) {
				msg = "对象为null";
			}
			throw new RuntimeException(msg);
		}
	}
	
	/**
	 * 对象如果不是null则抛运行时异常，异常信息可以自己指定
	 * @param o
	 * @param msg
	 */
	public static void objIsNotNull(Object o, String msg) {
		if (o != null) {
			if (StringUtil.isBlank(msg)) {
				msg = "对象不为null";
			}
			throw new RuntimeException(msg);
		}
	}
	
	/**
	 * 验证对象是否为null，如果是null，则抛运行时异常，异常信息可以自己指定
	 * @param o
	 * @param msg
	 */
	public static void strIsBlank(String str, String msg) {
		if (StringUtil.isBlank(str)) {
			if (StringUtil.isBlank(msg)) {
				msg = "字符串为空: " + str;
			}
			throw new RuntimeException(msg);
		}
	}
}
